<!DOCTYPE html>
<html class="ui-page-login">

	<head>
		<meta charset="utf-8">
		<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
		<title></title>
		<link href="../css/mui.min.css" rel="stylesheet" />
		<style>
			.link-area {
				display: block;
				margin-top: 25px;
				text-align: center;
			}
			.flex{
				display: flex;
				flex-direction: column;
				justify-content: center;
				align-items: center;
			}
			#logo{
				margin-top: 4em;
				margin-bottom: 3em;
			}
			#main{
				width: 95%;
			}
		</style>

	</head>

	<body>

		<div class="mui-content flex">
			<div id="logo">
				<img src="../images/logo.png" >
			</div>
		
			<div id="main">
				<form id='login-form' class="mui-input-group">
					<div class="mui-input-row">
						<label>账号</label>
						<input id='account' type="text" class="mui-input-clear mui-input" placeholder="请输入账号">
					</div>
					<div class="mui-input-row">
						<label>密码</label>
						<input id='password' type="password" class="mui-input-clear mui-input" placeholder="请输入密码">
					</div>
				</form>
				<div class="mui-content-padded">
					<button id='loginbtn' class="mui-btn mui-btn-block mui-btn-primary">登录</button>
					<div class="link-area"><a id='reg'>注册账号</a> <span class="spliter">|</span> <a id='forgetPassword'>忘记密码</a>
					</div>
				</div>
				<div class="mui-content-padded oauth-area">
				
				</div>
			</div>
		</div>
		<script src="../js/mui.min.js"></script>
		<script src="../js/mui.enterfocus.js"></script>
		<script src="../js/myapp.js"></script>
		<script src="../js/login.js"></script>
		<script>
			(function($, doc) {
				$.init({
					statusBarBackground: '#f7f7f7'
				});
				$.plusReady(function() {
					plus.screen.lockOrientation("portrait-primary");
					var settings = getSettings();
					var mainPage = plus.webview.getWebviewById("main");
					var toMain = function() {
						$.openWindow({
							url: '../index.html',
							id: 'index',
							createNew: true,
							show: {
								aniShow: 'pop-in',
								duration:'300'
							}
						});
					}; 
					//第三方登录
					var authBtns = ['qihoo', 'weixin','qq']; //配置业务支持的第三方登录
					var auths = {};
					var oauthArea = doc.querySelector('.oauth-area');
					plus.oauth.getServices(function(services) {
						for (var i in services) {
							var service = services[i];
							auths[service.id] = service;
							if (~authBtns.indexOf(service.id)) {
								var isInstalled = app.isInstalled(service.id);
								var btn = document.createElement('div');
								//如果微信未安装，则为不启用状态
								btn.setAttribute('class', 'oauth-btn' + (!isInstalled && service.id === 'weixin' ? (' disabled') : ''));
								btn.authId = service.id;
								btn.style.backgroundImage = 'url("images/' + service.id + '.png")'
								oauthArea.appendChild(btn);
							}
						}
						$(oauthArea).on('tap', '.oauth-btn', function() {
							if (this.classList.contains('disabled')) {
								plus.nativeUI.toast('您尚未安装微信客户端');
								return;
							}
							var auth = auths[this.authId];
							var waiting = plus.nativeUI.showWaiting();
							auth.login(function() {
								waiting.close();
								plus.nativeUI.toast("登录认证成功");
								auth.getUserInfo(function() {
									plus.nativeUI.toast("获取用户信息成功");
									var name = auth.userInfo.nickname || auth.userInfo.name;
									console.log(JSON.stringify(auth.userInfo));
									app.createState(name, function() {
										toMain();
									});
								}, function(e) {
									plus.nativeUI.toast("获取用户信息失败：" + e.message);
								});
							}, function(e) {
								waiting.close();
								plus.nativeUI.toast("登录认证失败：" + e.message);
							});
						});
					}, function(e) {
						oauthArea.style.display = 'none';
						plus.nativeUI.toast("获取登录认证失败：" + e.message);
					});
					
					setTimeout(function() {
						//关闭 splashs 
						plus.navigator.closeSplashscreen();
					}, 600);
					//检查 "登录状态/锁屏状态" 结束
					var loginButton = doc.getElementById('loginbtn');
					var qqcode = doc.getElementById('account');
					var password = doc.getElementById('password');
					var regButton = doc.getElementById('reg');
					var forgetButton = doc.getElementById('forgetPassword');
					loginButton.addEventListener('tap', function(event) {
						if (doc.getElementById('account').value.length != 8) {
							console.log(qqcode.value.length);
							mui.toast("检查是否是8位QQ号");
							return;
						}
						if (password.length < 6) {
							mui.toast("密码最短为 6 个字符");
							return;
						}
						mui.post(baseutl+'/qq/user/login',{
								qq: qqcode.value,
								password: password.value
							},function(res){
								if(res.code==0){
									curuserinfo = res.data;
									setSettings(curuserinfo);
									console.log(JSON.stringify(curuserinfo));
									toMain();
								}else{
									mui.alert(res.msg);
								}
							},'json'
						);
					});
					$.enterfocus('#login-form input', function() {
						$.trigger(loginButton, 'tap');
					});
					regButton.addEventListener('tap', function(event) {
						$.openWindow({
							url: 'reg.html',
							id: 'reg',
							preload: true,
							show: {
								aniShow: 'pop-in'
							},
							styles: {
								popGesture: 'hide'
							},
							waiting: {
								autoShow: false
							}
						});
					}, false);
					forgetButton.addEventListener('tap', function(event) {
						$.openWindow({
							url: 'setup/forget_password.html',
							id: 'forget_password',
							preload: true,
							show: {
								aniShow: 'pop-in'
							},
							styles: {
								popGesture: 'hide'
							},
							waiting: {
								autoShow: false
							}
						});
					}, false);
					//
					window.addEventListener('resize', function() {
						oauthArea.style.display = document.body.clientHeight > 400 ? 'block' : 'none';
					}, false);
					//
					var backButtonPress = 0;
					$.back = function(event) {
						backButtonPress++;
						if (backButtonPress > 1) {
							plus.runtime.quit();
						} else {
							plus.nativeUI.toast('再按一次退出应用');
						}
						setTimeout(function() {
							backButtonPress = 0;
						}, 1000);
						return false;
					};
				});
			}(mui, document));
		</script>
	</body>

</html>